package hibernate.model;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToOne;
import javax.persistence.PrimaryKeyJoinColumn;
import javax.persistence.Table;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.NamedQueries;
import org.hibernate.annotations.NamedQuery;
import org.hibernate.annotations.Parameter;

@SuppressWarnings("serial")
@Entity
@Table(name = "buzdolabi", catalog = "emmy")
@NamedQueries({  // Şimdilik bu query'lere gerek yok ihtiyaç olursa diye hazırlandı...
@NamedQuery(name = "findBuzdolapUretici",		 query = "from Buzdolabi where ureticiid = :buretici"),
@NamedQuery(name = "findBuzdolapTip", 			 query = "from Buzdolabi where tipi like :bTip"),
@NamedQuery(name = "findBuzdolapSoguNetHacim",   query = "from Buzdolabi where sogutucuNetHacim like :bSoguNetHacim"),
@NamedQuery(name = "findBuzdolapDonNetHacim",    query = "from Buzdolabi where dondurucuNetHacim like :bDonNetHacim"),
@NamedQuery(name = "findBuzdolapRenk", 		     query = "from Buzdolabi where renk like :bRenk"),
@NamedQuery(name = "findBuzdolaphijOzl", 	     query = "from Buzdolabi where hijyenOzellik like :bHijyOz"),
@NamedQuery(name = "findBuzdolapKapiYonDegis",   query = "from Buzdolabi where kapiYonDegistirme like :bKapiYonDegis"),
@NamedQuery(name = "findBuzdolapSuPompa", 	     query = "from Buzdolabi where suPompasi like :bSuPompa"),
@NamedQuery(name = "findBuzdolapGovdeRafTip",    query = "from Buzdolabi where govdeRafTipi like :bGovdeRafTip"),
@NamedQuery(name = "findBuzdolapHizliDonBol",    query = "from Buzdolabi where hizliDonBolmesi like :bHizliDonBol"),
@NamedQuery(name = "findBuzdolapBuzluk", 	     query = "from Buzdolabi where buzluk like :bBuzluk"),
@NamedQuery(name = "findBuzdolapCekSay", 	     query = "from Buzdolabi where cekmeceSayisi like :bCekmeceSay"),
@NamedQuery(name = "findBuzdolapAydinlatma",     query = "from Buzdolabi where aydinlatma like :bAydinlatma"),
@NamedQuery(name = "findBuzdolapDonBolAydin",    query = "from Buzdolabi where donBolmeAydinlatma like :bDonBolAydin"),
@NamedQuery(name = "findBuzdolapSifirDereceBol", query = "from Buzdolabi where sifirDereceBolmesi like :bSifirDereceBol"),
@NamedQuery(name = "findBuzdolapSiselikBol", 	 query = "from Buzdolabi where siselikBolmesi like :bSiselikBol"),
@NamedQuery(name = "findBuzdolapSebzelik", 		 query = "from Buzdolabi where sebzelik like :bSebzelik"),
@NamedQuery(name = "findBuzdolapKatlanTelRaf",   query = "from Buzdolabi where katlanabilirTelRaf like :bKatlanTelRaf"),
@NamedQuery(name = "findBuzdolapEnerPerf", 	     query = "from Buzdolabi where enerjiPerformans like :bEnerPerf"),
@NamedQuery(name = "findBuzdolapEnerTuk", 		 query = "from Buzdolabi where enerjiTuketimi like :bEnerTuk"),
@NamedQuery(name = "findBuzdolapCocukKilit",  	 query = "from Buzdolabi where cocukKilit like :bCocukKilit"),
@NamedQuery(name = "findBuzdolapYukseklik", 	 query = "from Buzdolabi where yukseklik like :bYukseklik"),
@NamedQuery(name = "findBuzdolapGenislik", 	 	 query = "from Buzdolabi where genislik like :bGenislik"),
@NamedQuery(name = "findBuzdolapDerinlik", 		 query = "from Buzdolabi where derinlik like :bDerinlik"),
@NamedQuery(name = "findBuzdolapGarantiSure", 	 query = "from Buzdolabi where garantiSuresi like :bGarantiSure")
})
public class Buzdolabi implements java.io.Serializable {

	private long aygitid;
	private Sirketprofil sirketprofil;
	private Aygit aygit;
	private String tipi;
	private String sogutucuNetHacim;
	private String dondurucuNetHacim;
	private String dondurucuKapasite;
	private String renk;
	private String hijyenOzellik;
	private String kapiYonDegistirme;
	private String suPompasi;
	private String govdeRafTipi;
	private String kapiRafTipi;
	private String hizliDonBolmesi;
	private String buzluk;
	private String cekmeceSayisi;
	private String aydinlatma;
	private String donBolmeAydinlatma;
	private String sifirDereceBolmesi;
	private String siselikBolmesi;
	private String sebzelik;
	private String katlanabilirTelRaf;
	private String enerjiPerformans;
	private String enerjiTuketimi;
	private String cocukKilit;
	private String yukseklik;
	private String genislik;
	private String derinlik;
	private String garantiSuresi;

	public Buzdolabi() {
	}

	public Buzdolabi(Sirketprofil sirketprofil, Aygit aygit,
			String tipi, String sogutucuNetHacim,
			String dondurucuNetHacim, String dondurucuKapasite, String renk,
			String hijyenOzellik, String kapiYonDegistirme, String suPompasi,
			String govdeRafTipi, String kapiRafTipi, String hizliDonBolmesi,
			String buzluk, String cekmeceSayisi, String aydinlatma,
			String donBolmeAydinlatma, String sifirDereceBolmesi,
			String siselikBolmesi, String sebzelik, String katlanabilirTelRaf,
			String enerjiPerformans, String enerjiTuketimi, String cocukKilit,
			String yukseklik, String genislik, String derinlik,
			String garantiSuresi) {
		this.sirketprofil = sirketprofil;
		this.aygit = aygit;
		this.tipi = tipi;
		this.sogutucuNetHacim = sogutucuNetHacim;
		this.dondurucuNetHacim = dondurucuNetHacim;
		this.dondurucuKapasite = dondurucuKapasite;
		this.renk = renk;
		this.hijyenOzellik = hijyenOzellik;
		this.kapiYonDegistirme = kapiYonDegistirme;
		this.suPompasi = suPompasi;
		this.govdeRafTipi = govdeRafTipi;
		this.kapiRafTipi = kapiRafTipi;
		this.hizliDonBolmesi = hizliDonBolmesi;
		this.buzluk = buzluk;
		this.cekmeceSayisi = cekmeceSayisi;
		this.aydinlatma = aydinlatma;
		this.donBolmeAydinlatma = donBolmeAydinlatma;
		this.sifirDereceBolmesi = sifirDereceBolmesi;
		this.siselikBolmesi = siselikBolmesi;
		this.sebzelik = sebzelik;
		this.katlanabilirTelRaf = katlanabilirTelRaf;
		this.enerjiPerformans = enerjiPerformans;
		this.enerjiTuketimi = enerjiTuketimi;
		this.cocukKilit = cocukKilit;
		this.yukseklik = yukseklik;
		this.genislik = genislik;
		this.derinlik = derinlik;
		this.garantiSuresi = garantiSuresi;
	}

	@GenericGenerator(name = "generator", strategy = "foreign", parameters = @Parameter(name = "property", value = "aygit"))
	@Id
	@GeneratedValue(generator = "generator")
	@Column(name = "aygitid", unique = true, nullable = false)
	public long getAygitid() {
		return this.aygitid;
	}

	public void setAygitid(long aygitid) {
		this.aygitid = aygitid;
	}

	@ManyToOne(fetch = FetchType.EAGER)
	@JoinColumn(name = "ureticiid", nullable = false)
	public Sirketprofil getSirketprofil() {
		return this.sirketprofil;
	}

	public void setSirketprofil(Sirketprofil sirketprofil) {
		this.sirketprofil = sirketprofil;
	}

	@OneToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
	@PrimaryKeyJoinColumn
	public Aygit getAygit() {
		return this.aygit;
	}

	public void setAygit(Aygit aygit) {
		this.aygit = aygit;
	}

	@Column(name = "tipi", nullable = false, length = 20)
	public String getTipi() {
		return this.tipi;
	}

	public void setTipi(String tipi) {
		this.tipi = tipi;
	}

	@Column(name = "sogutucuNetHacim", nullable = false, length = 20)
	public String getSogutucuNetHacim() {
		return this.sogutucuNetHacim;
	}

	public void setSogutucuNetHacim(String sogutucuNetHacim) {
		this.sogutucuNetHacim = sogutucuNetHacim;
	}

	@Column(name = "dondurucuNetHacim", nullable = false, length = 20)
	public String getDondurucuNetHacim() {
		return this.dondurucuNetHacim;
	}

	public void setDondurucuNetHacim(String dondurucuNetHacim) {
		this.dondurucuNetHacim = dondurucuNetHacim;
	}

	@Column(name = "dondurucuKapasite", nullable = false, length = 20)
	public String getDondurucuKapasite() {
		return this.dondurucuKapasite;
	}

	public void setDondurucuKapasite(String dondurucuKapasite) {
		this.dondurucuKapasite = dondurucuKapasite;
	}

	@Column(name = "renk", nullable = false, length = 20)
	public String getRenk() {
		return this.renk;
	}

	public void setRenk(String renk) {
		this.renk = renk;
	}

	@Column(name = "hijyenOzellik", nullable = false, length = 20)
	public String getHijyenOzellik() {
		return this.hijyenOzellik;
	}

	public void setHijyenOzellik(String hijyenOzellik) {
		this.hijyenOzellik = hijyenOzellik;
	}

	@Column(name = "kapiYonDegistirme", nullable = false, length = 20)
	public String getKapiYonDegistirme() {
		return this.kapiYonDegistirme;
	}

	public void setKapiYonDegistirme(String kapiYonDegistirme) {
		this.kapiYonDegistirme = kapiYonDegistirme;
	}

	@Column(name = "suPompasi", nullable = false, length = 20)
	public String getSuPompasi() {
		return this.suPompasi;
	}

	public void setSuPompasi(String suPompasi) {
		this.suPompasi = suPompasi;
	}

	@Column(name = "govdeRafTipi", nullable = false, length = 20)
	public String getGovdeRafTipi() {
		return this.govdeRafTipi;
	}

	public void setGovdeRafTipi(String govdeRafTipi) {
		this.govdeRafTipi = govdeRafTipi;
	}

	@Column(name = "kapiRafTipi", nullable = false, length = 20)
	public String getKapiRafTipi() {
		return this.kapiRafTipi;
	}

	public void setKapiRafTipi(String kapiRafTipi) {
		this.kapiRafTipi = kapiRafTipi;
	}

	@Column(name = "hizliDonBolmesi", nullable = false, length = 20)
	public String getHizliDonBolmesi() {
		return this.hizliDonBolmesi;
	}

	public void setHizliDonBolmesi(String hizliDonBolmesi) {
		this.hizliDonBolmesi = hizliDonBolmesi;
	}

	@Column(name = "buzluk", nullable = false, length = 20)
	public String getBuzluk() {
		return this.buzluk;
	}

	public void setBuzluk(String buzluk) {
		this.buzluk = buzluk;
	}

	@Column(name = "cekmeceSayisi", nullable = false, length = 20)
	public String getCekmeceSayisi() {
		return this.cekmeceSayisi;
	}

	public void setCekmeceSayisi(String cekmeceSayisi) {
		this.cekmeceSayisi = cekmeceSayisi;
	}

	@Column(name = "aydinlatma", nullable = false, length = 20)
	public String getAydinlatma() {
		return this.aydinlatma;
	}

	public void setAydinlatma(String aydinlatma) {
		this.aydinlatma = aydinlatma;
	}

	@Column(name = "donBolmeAydinlatma", nullable = false, length = 20)
	public String getDonBolmeAydinlatma() {
		return this.donBolmeAydinlatma;
	}

	public void setDonBolmeAydinlatma(String donBolmeAydinlatma) {
		this.donBolmeAydinlatma = donBolmeAydinlatma;
	}

	@Column(name = "sifirDereceBolmesi", nullable = false, length = 20)
	public String getSifirDereceBolmesi() {
		return this.sifirDereceBolmesi;
	}

	public void setSifirDereceBolmesi(String sifirDereceBolmesi) {
		this.sifirDereceBolmesi = sifirDereceBolmesi;
	}

	@Column(name = "siselikBolmesi", nullable = false, length = 20)
	public String getSiselikBolmesi() {
		return this.siselikBolmesi;
	}

	public void setSiselikBolmesi(String siselikBolmesi) {
		this.siselikBolmesi = siselikBolmesi;
	}

	@Column(name = "sebzelik", nullable = false, length = 20)
	public String getSebzelik() {
		return this.sebzelik;
	}

	public void setSebzelik(String sebzelik) {
		this.sebzelik = sebzelik;
	}

	@Column(name = "katlanabilirTelRaf", nullable = false, length = 20)
	public String getKatlanabilirTelRaf() {
		return this.katlanabilirTelRaf;
	}

	public void setKatlanabilirTelRaf(String katlanabilirTelRaf) {
		this.katlanabilirTelRaf = katlanabilirTelRaf;
	}

	@Column(name = "enerjiPerformans", nullable = false, length = 20)
	public String getEnerjiPerformans() {
		return this.enerjiPerformans;
	}

	public void setEnerjiPerformans(String enerjiPerformans) {
		this.enerjiPerformans = enerjiPerformans;
	}

	@Column(name = "enerjiTuketimi", nullable = false, length = 20)
	public String getEnerjiTuketimi() {
		return this.enerjiTuketimi;
	}

	public void setEnerjiTuketimi(String enerjiTuketimi) {
		this.enerjiTuketimi = enerjiTuketimi;
	}

	@Column(name = "cocukKilit", nullable = false, length = 20)
	public String getCocukKilit() {
		return this.cocukKilit;
	}

	public void setCocukKilit(String cocukKilit) {
		this.cocukKilit = cocukKilit;
	}

	@Column(name = "yukseklik", nullable = false, length = 20)
	public String getYukseklik() {
		return this.yukseklik;
	}

	public void setYukseklik(String yukseklik) {
		this.yukseklik = yukseklik;
	}

	@Column(name = "genislik", nullable = false, length = 20)
	public String getGenislik() {
		return this.genislik;
	}

	public void setGenislik(String genislik) {
		this.genislik = genislik;
	}

	@Column(name = "derinlik", nullable = false, length = 20)
	public String getDerinlik() {
		return this.derinlik;
	}

	public void setDerinlik(String derinlik) {
		this.derinlik = derinlik;
	}

	@Column(name = "garantiSuresi", nullable = false, length = 20)
	public String getGarantiSuresi() {
		return this.garantiSuresi;
	}

	public void setGarantiSuresi(String garantiSuresi) {
		this.garantiSuresi = garantiSuresi;
	}
}